package com.android.launcher3;

import android.animation.ObjectAnimator;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;

import androidx.annotation.Nullable;

import com.android.launcher3.graphics.PreloadIconDrawable;

public interface BubbleViewInterf {
    void setCellLayout(@Nullable CellLayout layout);

    void reset();

    void applyFromWorkspaceItem(WorkspaceItemInfo info);

    void applyFromWorkspaceItem(WorkspaceItemInfo info, boolean promiseStateChanged);

    void applyPromiseState(boolean promiseStateChanged);

    PreloadIconDrawable applyProgressLevel(int progressLevel);
    Drawable getIcon();

    void getIconBounds(Rect outBounds);

    int getIconSize();

    void setStayPressed(boolean stayPressed);

    void clearPressedBackground();

    void applyDotState(ItemInfo itemInfo, boolean animate);
    void setForceHideDot(boolean forceHideDot);

    void setIconVisible(boolean visible);

    boolean shouldTextBeVisible();

    void setTextVisibility(boolean visible);

    ObjectAnimator createTextAlphaAnimator(boolean fadeIn);
    void verifyHighRes();
}
